package com.zmn.oms.common.constant;

import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.zmn.common.constant.GlobalConsts;
import com.zmn.oms.common.dto.BankAccountDTO;
import org.apache.commons.lang.StringUtils;

import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;

/**
 * @author huangyifeng
 * @Description
 * @date 2020/4/1 15:26
 */

public class CompanyBankAccountConsts {

    // 公司状态 1停用 2启用
    public static final Integer COMPANY_STATUS_STOP = 1;
    public static final Integer COMPANY_STATUS_ENABLE = 2;

    // 发票性质 1纸质发票 2电子发票
    public static final Integer PAPER_INVOICE = 1;
    public static final Integer ELECTRONICS_INVOICE = 2;

    // 总公司id
    public static final Integer ZMN_COMPANY_ID = 10000;
    public static final Integer YEYX_COMPANY_ID = 20000;
    public static final Integer SAAS_COMPANY_ID = 30000;
    public static final Integer CNHB_COMPANY_ID = 40000;

    public static final Integer ZMN_GZ_COMPANY_ID = 401422;// 广州信息公司 2
    public static final Integer ZMN_FZ_COMPANY_ID2 = 401452;// 福州公司2
    public static final Integer ZMN_FZ_COMPANY_ID3 = 401453;// 福州公司2、3

    // 啄木鸟-家修匠子公司id
    public static Integer ZMN_JXJ_COMPANY_ID = 45111;

    /** 公司类型：140 电器公司 */
    public final static int COMPANY_TYPE_ELECTRIC = 140;
    /** 公司类型：130 信息公司-服务商 */
    public final static int COMPANY_TYPE_SERVICE = 130;

    // 笨鸟银行帐号
    public static final String BN_ACCOUNT = "3100038509100083369";
    public static final String BN_ACCOUNT_NAME = "工商银行时代天街支行-笨鸟供应链平台";
    // 重庆笨鸟供应链管理有限公司id
    public static final Integer BN_COMPANY_ID = 52550;

    /**
     * 总司公司ID
     * @param plat
     * @return
     */
    public static Integer getCompanyIdByPlat(int plat) {
        Integer companyId = null;
        switch (plat){
            case GlobalConsts.PLAT_MARK_YEYX:
                companyId = CompanyBankAccountConsts.YEYX_COMPANY_ID;
                break;
            case GlobalConsts.PLAT_MARK_ZMN:
                companyId = CompanyBankAccountConsts.ZMN_COMPANY_ID;
                break;
            case GlobalConsts.PLAT_MARK_SAAS:
                companyId = CompanyBankAccountConsts.SAAS_COMPANY_ID;
                break;
            case GlobalConsts.PLAT_MARK_CNHB:
                companyId = CompanyBankAccountConsts.CNHB_COMPANY_ID;
                break;
        }
        return companyId;
    }

    private static List<BankAccountDTO> ACCOUNT_LIST = Lists.newArrayListWithExpectedSize(100);
    static {
        //****************************** 啄木鸟 ******************************
        // 啄木鸟总司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("500112036018010047344").bankName("交通银行重庆大坪支行").companyName("重庆啄木鸟网络科技有限公司")
                .companyId(ZMN_COMPANY_ID).plat(GlobalConsts.PLAT_MARK_ZMN).build());

        // 啄木鸟子公司
        // 工商银行-海口茂维信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2201004019200204967").bankName("工商银行").companyName("海口茂维信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40151).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-海口快益修电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2201004019200205071").bankName("工商银行").companyName("海口快益修电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18020).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 济南勇拓信息技术有限公司：工行济南堤口路支行 1602005319200073974
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1602005319200073974").bankName("工行济南堤口路支行").companyName("济南勇拓信息技术有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40149).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 济南啄木鸟电器有限公司：工行济南堤口路支行 1602005319200073850
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1602005319200073850").bankName("工行济南堤口路支行").companyName("济南啄木鸟电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18015).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-成都卓杰信息技术有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4402245219100004748").bankName("工商银行").companyName("成都卓杰信息技术有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40132).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-成都市意民电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4402245219100004872").bankName("工行济南堤口路支行").companyName("成都市意民电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18001).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-郑州市卓雅网络科技有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1702820809200027177").bankName("工商银行").companyName("郑州市卓雅网络科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40140).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-郑州市螺丝刀电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1702820809200027851").bankName("工商银行").companyName("郑州市螺丝刀电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18008).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 建设银行-福州丰德信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("35001896407052517129").bankName("建设银行").companyName("福州丰德信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40145).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-福州丰德信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1402021119600072128").bankName("工商银行").companyName("福州丰德信息技术服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(40145).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司

        // 建设银行-福州市台江区啄木鸟电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("35001896407052517617").bankName("建设银行").companyName("福州市台江区啄木鸟电器维修服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(18010).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司
        // 工商银行-福州市台江区啄木鸟电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1402021119600072403").bankName("工商银行").companyName("福州市台江区啄木鸟电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18010).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-昆明啄木鸟信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2502010109201103860").bankName("工商银行").companyName("昆明啄木鸟信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40135).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-昆明修八方电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2502010109201104115").bankName("工商银行").companyName("昆明修八方电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18003).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-苏州温创信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1102110619006057114").bankName("工商银行").companyName("苏州温创信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40147).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-苏州飞欣电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1102110619006057087").bankName("工商银行").companyName("苏州飞欣电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18017).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-杭州伟捷信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1202021809000091678").bankName("工商银行").companyName("杭州伟捷信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40136).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-杭州无微电器服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1202021809000093358").bankName("工商银行").companyName("杭州无微电器服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18004).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-北京家电卫士信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0200225119006716811").bankName("工商银行").companyName("北京家电卫士信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40150).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-北京啄木鸟电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0200225119006716784").bankName("工商银行").companyName("北京啄木鸟电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18019).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 南宁连横信息技术服务有限公司：工商银行广西南宁市民族支行营业室 2102109019300510317
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2102109019300510317").bankName("工商银行").companyName("南宁连横信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40143).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 南宁百事吉电器维修有限公司：工商银行广西南宁市民族支行营业室 2102109019300510290
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2102109019300510290").bankName("工商银行").companyName("南宁百事吉电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18012).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-长沙创宁信息技术咨询服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1901004009022539533").bankName("工商银行").companyName("长沙创宁信息技术咨询服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40138).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-长沙创营电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1901004009022540922").bankName("工商银行").companyName("长沙创营电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18006).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-天津市好知音信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0302040219300185729").bankName("工商银行").companyName("天津市好知音信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40144).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-天津兰星烁电器维修服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0302040219300186108").bankName("工商银行").companyName("天津兰星烁电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18011).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-深圳市仨源信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4000024709200218794").bankName("工商银行").companyName("深圳市仨源信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40141).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-深圳市快乐鸟电器服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4000024709200220163").bankName("工商银行").companyName("深圳市快乐鸟电器服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18014).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-上海汇浦信息技术有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1001248519300304085").bankName("工商银行").companyName("上海汇浦信息技术有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40146).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-上海水英电器维修有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1001248519300304112").bankName("工商银行").companyName("上海水英电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18018).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-合肥恒修信息服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1302010509200372622").bankName("工商银行").companyName("合肥恒修信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40139).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-合肥市无微电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1302010509200374674").bankName("工商银行").companyName("合肥市无微电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18007).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-南京苏百信息服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4301018809100152924").bankName("工商银行").companyName("南京苏百信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40148).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-南京海飞电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4301018809100153276").bankName("工商银行").companyName("南京海飞电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18016).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-南昌华阳信息服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1502203009300250147").bankName("工商银行").companyName("南昌华阳信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40137).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-南昌修一修电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("1502203009300250670").bankName("工商银行").companyName("南昌修一修电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18005).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-西安啄木鸟商务信息服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3700020709006556878").bankName("工商银行").companyName("西安啄木鸟商务信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40153).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-西安合力电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3700020709006557532").bankName("工商银行").companyName("西安合力电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18022).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-武汉百事兴商务信息咨询服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3202016509200100276").bankName("工商银行").companyName("武汉百事兴商务信息咨询服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40152).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-武汉快云修电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3202016509200100702").bankName("工商银行").companyName("武汉快云修电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18021).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-贵阳啄木鸟商务信息咨询有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2402005309200022277").bankName("工商银行").companyName("贵阳啄木鸟商务信息咨询有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40134).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-贵阳百事发电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2402018109200203666").bankName("工商银行").companyName("贵阳百事发电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18002).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-重庆修一修商务信息咨询有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100024309200330607").bankName("工商银行").companyName("重庆修一修商务信息咨询有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40133).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-重庆百家家维电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100038509000024084").bankName("工商银行").companyName("重庆百家家维电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18000).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-广州善谋信息科技有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3602864309100062274").bankName("工商银行").companyName("广州善谋信息科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40142).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行晓港支行-广州啄木鸟电器维修有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3602864309100148460").bankName("工商银行晓港支行").companyName("广州啄木鸟电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(40142).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-广州电通王电器维修有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3602864309100063203").bankName("工商银行").companyName("广州电通王电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18013).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-厦门迅泉信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4100023009200120884").bankName("工商银行").companyName("厦门迅泉信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(40154).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-厦门家修汇电器维修有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("4100023009200110455").bankName("工商银行").companyName("厦门家修汇电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(18009).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-沈阳信息技术服务有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3301002309200018350").bankName("工商银行").companyName("沈阳信息技术服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(44138).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-沈阳电器有限公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3301002309200019128").bankName("工商银行").companyName("沈阳电器有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(44141).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-东莞市永邦信息服务有限公司 东莞信息公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2010020309200099408").bankName("工商银行-东莞市永邦信息服务有限公司").companyName("东莞市永邦信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(55249).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-东莞啄渝电器维修服务有限公司  东莞电器公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2010020309200101176").bankName("工商银行-东莞啄渝电器维修服务有限公司").companyName("东莞啄渝电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(55337).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-石家庄创浦商务信息咨询有限公司 石家庄信息公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0402302409300207710").bankName("工商银行-石家庄创浦商务信息咨询有限公司").companyName("石家庄创浦商务信息咨询有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(55270).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-石家庄修一修电器维修有限公司  石家庄电器公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0402302409300203703").bankName("工商银行-石家庄修一修电器维修有限公司").companyName("石家庄修一修电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(55338).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-宁波金伟信息服务有限公司    宁波信息公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3901121209000015496").bankName("工商银行-宁波金伟信息服务有限公司").companyName("宁波金伟信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(55258).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-宁波励志电器维修服务有限公司    宁波电器公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3901121209000016797").bankName("工商银行-宁波励志电器维修服务有限公司").companyName("宁波励志电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(55361).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-山西乐邦信息服务有限公司    太原信息公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0502203409200014961").bankName("工商银行-山西乐邦信息服务有限公司").companyName("山西乐邦信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(55269).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司

        // 工商银行-太原啄渝电器维修有限公司    太原电器公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("0502203409200015863").bankName("工商银行-太原啄渝电器维修有限公司").companyName("太原啄渝电器维修有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(55528).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司

        // 工商银行-兰州然尤信息服务有限公司    兰州信息公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2703100209200053186").bankName("工商银行-兰州然尤信息服务有限公司").companyName("兰州然尤信息服务有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(55277).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司
        // 工商银行-兰州修一修电器维修服务有限公司    兰州电器公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("2703100209200051657").bankName("工商银行-兰州修一修电器维修服务有限公司").companyName("兰州修一修电器维修服务有限公司").companyType(COMPANY_TYPE_ELECTRIC)
                .companyId(55362).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 电器公司



        // 工商银行-重庆言而有信网络科技有限公司    家修匠
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100038509100031086").bankName("工商银行-重庆言而有信网络科技有限公司").companyName("重庆言而有信网络科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(52167).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司

        // 工商银行-重庆言而有信网络科技有限公司    家修匠子公司
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100038509100031086").bankName("工商银行重庆时代天街支行").companyName("重庆言而有信网络科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(45111).plat(GlobalConsts.PLAT_MARK_ZMN).build());// 信息公司

        //****************************** 川南环保 ******************************
        // 川南环保主账户
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100038509100022756").bankName("工行重庆较场口时代天街支行").companyName("重庆川南环保科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(CNHB_COMPANY_ID).plat(GlobalConsts.PLAT_MARK_CNHB).build());

        //****************************** 言而有信 ******************************
        // 言而有信主账户
        ACCOUNT_LIST.add(BankAccountDTO.builder()
                .bankAccount("3100038509100031086").bankName("工商银行较场口时代天街支行").companyName("重庆言而有信网络科技有限公司").companyType(COMPANY_TYPE_SERVICE)
                .companyId(YEYX_COMPANY_ID).plat(GlobalConsts.PLAT_MARK_YEYX).build());
    }

    private static Map<Integer, Map<Integer, String>> PLAT_ACCOUNTS_MAP = Maps.newHashMap();
    static {
        Map<Integer, String> zmnMap = Maps.newHashMap(); //啄木鸟账户
        zmnMap.put(ZMN_COMPANY_ID, "500112036018010047344");
        zmnMap.put(40151, "2201004019200204967");//1
        zmnMap.put(18020, "2201004019200205071");//1
        zmnMap.put(40149, "1602005319200073974");//1
        zmnMap.put(18015, "1602005319200073850"); // 济南啄木鸟电器有限公司
        zmnMap.put(40132, "4402245219100004748");//1
        zmnMap.put(18001, "4402245219100004872");//1
        zmnMap.put(40140, "1702820809200027177");//1
        zmnMap.put(18008, "1702820809200027851");//1
        zmnMap.put(40145, "35001896407052517129");//1
        zmnMap.put(18010, "35001896407052517617");//1
        zmnMap.put(ZMN_FZ_COMPANY_ID2, "1402021119600072128");//1
        zmnMap.put(ZMN_FZ_COMPANY_ID3, "1402021119600072403");//1
        zmnMap.put(40135, "2502010109201103860");//1
        zmnMap.put(18003, "2502010109201104115");//1
        zmnMap.put(40147, "1102110619006057114");//1
        zmnMap.put(18017, "1102110619006057087");//1
        zmnMap.put(40136, "1202021809000091678");//1
        zmnMap.put(18004, "1202021809000093358");//1
        zmnMap.put(40150, "0200225119006716811"); // 北京家电卫士信息技术服务有限公司
        zmnMap.put(18019, "0200225119006716784");// 北京啄木鸟电器维修服务有限公司
        zmnMap.put(40143, "2102109019300510317");//1
        zmnMap.put(18012, "2102109019300510290");//1
        zmnMap.put(40138, "1901004009022539533");//1
        zmnMap.put(18006, "1901004009022540922");//1
        zmnMap.put(40144, "0302040219300185729");//1
        zmnMap.put(18011, "0302040219300186108");//1
        zmnMap.put(40141, "4000024709200218794");//1
        zmnMap.put(18014, "4000024709200220163");//1
        zmnMap.put(40146, "1001248519300304085");//1
        zmnMap.put(18018, "1001248519300304112");//1
        zmnMap.put(40139, "1302010509200372622");//1
        zmnMap.put(18007, "1302010509200374674");//1
        zmnMap.put(40148, "4301018809100152924");//1
        zmnMap.put(18016, "4301018809100153276");//1
        zmnMap.put(40137, "1502203009300250147");//1
        zmnMap.put(18005, "1502203009300250670");//1
        zmnMap.put(40153, "3700020709006556878");//1
        zmnMap.put(18022, "3700020709006557532");//1
        zmnMap.put(40152, "3202016509200100276");//1
        zmnMap.put(18021, "3202016509200100702");//1
        zmnMap.put(40134, "2402005309200022277");//1
        zmnMap.put(18002, "2402018109200203666");//1
        zmnMap.put(40133, "3100024309200330607");//1
        zmnMap.put(18000, "3100038509000024084");//1
        zmnMap.put(40142, "3602864309100062274");//1
        zmnMap.put(ZMN_GZ_COMPANY_ID, "3602864309100148460");//公司2
        zmnMap.put(18013, "3602864309100063203");//1

        zmnMap.put(40154,"4100023009200120884");//1
        zmnMap.put(18009,"4100023009200110455");//1

        zmnMap.put(44138, "3301002309200018350");//1
        zmnMap.put(44141, "3301002309200019128");//1

        // 工商银行-东莞市永邦信息服务有限公司
        zmnMap.put(55249, "2010020309200099408");//1
        // 工商银行-东莞啄渝电器维修服务有限公司
        zmnMap.put(55337, "2010020309200101176");//1

        // 工商银行-石家庄创浦商务信息咨询有限公司 石家庄信息公司
        zmnMap.put(55270, "0402302409300207710");//1
        // 工商银行-石家庄修一修电器维修有限公司 石家庄电器公司
        zmnMap.put(55338, "0402302409300203703");//1

        // 工商银行-宁波金伟信息服务有限公司 宁波公司
        zmnMap.put(55258, "3901121209000015496");//1
        // 工商银行-宁波励志电器维修服务有限公司 宁波电器公司
        zmnMap.put(55361, "3901121209000016797");//1

        // 工商银行-山西乐邦信息服务有限公司 太原信息公司
        zmnMap.put(55269, "0502203409200014961");//1

        // 工商银行-兰州然尤信息服务有限公司 兰州信息公司
        zmnMap.put(55277, "2703100209200053186");//1
        // 工商银行-兰州修一修电器维修服务有限公司 太原电器公司
        zmnMap.put(55362, "2703100209200051657");//1

        // 工商银行-重庆言而有信网络科技有限公司 家修匠
        zmnMap.put(52167, "3100038509100031086");//1

        PLAT_ACCOUNTS_MAP.put(GlobalConsts.PLAT_MARK_ZMN, zmnMap);

        Map<Integer, String> cnhbMap = Maps.newHashMap();   //川南环保账户
        cnhbMap.put(CNHB_COMPANY_ID,"3100038509100022756");
        PLAT_ACCOUNTS_MAP.put(GlobalConsts.PLAT_MARK_CNHB, cnhbMap);

        Map<Integer, String> yeyxMap = Maps.newHashMap();   // 言而有信
        yeyxMap.put(YEYX_COMPANY_ID,"3100038509100031086");
        PLAT_ACCOUNTS_MAP.put(GlobalConsts.PLAT_MARK_YEYX, yeyxMap);
    }

    private static Map<String, String> ACCOUNTS_MAP = Maps.newHashMap();
    static {
        ACCOUNTS_MAP.put("500112036018010047344","交通银行重庆大坪支行-重庆啄木鸟网络科技有限公司");     //啄木鸟主账户
        //啄木鸟子公司账户
        ACCOUNTS_MAP.put("2201004019200204967", "工商银行-海口茂维信息技术服务有限公司");//1
        ACCOUNTS_MAP.put("2201004019200205071", "工商银行-海口快益修电器维修服务有限公司");//1
        ACCOUNTS_MAP.put("1602005319200073974", "工商银行-济南勇拓信息技术有限公司"); // 济南勇拓信息技术有限公司：工行济南堤口路支行 1602005319200073974
        ACCOUNTS_MAP.put("1602005319200073850", "工商银行-济南啄木鸟电器有限公司"); // 济南啄木鸟电器有限公司：工行济南堤口路支行 1602005319200073850
        ACCOUNTS_MAP.put("4402245219100004748", "工商银行-成都卓杰信息技术有限公司");//1
        ACCOUNTS_MAP.put("4402245219100004872", "工商银行-成都市意民电器维修服务有限公司");//1
        ACCOUNTS_MAP.put("1702820809200027177", "工商银行-郑州市卓雅网络科技有限公司");
        ACCOUNTS_MAP.put("1702820809200027851", "工商银行-郑州市螺丝刀电器有限公司");
        ACCOUNTS_MAP.put("35001896407052517129", "建设银行-福州丰德信息技术服务有限公司");
        ACCOUNTS_MAP.put("35001896407052517617", "建设银行-福州市台江区啄木鸟电器维修服务有限公司");
        ACCOUNTS_MAP.put("1402021119600072128", "工商银行-福州丰德信息技术服务有限公司");
        ACCOUNTS_MAP.put("1402021119600072403", "工商银行-福州市台江区啄木鸟电器维修服务有限公司");
        ACCOUNTS_MAP.put("2502010109201103860", "工商银行-昆明啄木鸟信息技术服务有限公司");
        ACCOUNTS_MAP.put("2502010109201104115", "工商银行-昆明修八方电器有限公司");
        ACCOUNTS_MAP.put("1102110619006057114", "工商银行-苏州温创信息技术服务有限公司");
        ACCOUNTS_MAP.put("1102110619006057087", "工商银行-苏州飞欣电器维修服务有限公司");
        ACCOUNTS_MAP.put("1202021809000091678", "工商银行-杭州伟捷信息技术服务有限公司");
        ACCOUNTS_MAP.put("1202021809000093358", "工商银行-杭州无微电器服务有限公司");
        ACCOUNTS_MAP.put("0200225119006716811", "工商银行-北京家电卫士信息技术服务有限公司");
        ACCOUNTS_MAP.put("0200225119006716784", "工商银行-北京啄木鸟电器维修服务有限公司");
        ACCOUNTS_MAP.put("2102109019300510317", "工商银行-南宁连横信息技术服务有限公司"); // 南宁连横信息技术服务有限公司：工商银行广西南宁市民族支行营业室 2102109019300510317
        ACCOUNTS_MAP.put("2102109019300510290", "工商银行-南宁百事吉电器维修有限公司"); // 南宁百事吉电器维修有限公司：工商银行广西南宁市民族支行营业室 2102109019300510290
        ACCOUNTS_MAP.put("1901004009022539533", "工商银行-长沙创宁信息技术咨询服务有限公司");
        ACCOUNTS_MAP.put("1901004009022540922", "工商银行-长沙创营电器维修服务有限公司");
        ACCOUNTS_MAP.put("0302040219300185729", "工商银行-天津市好知音信息技术服务有限公司");
        ACCOUNTS_MAP.put("0302040219300186108", "工商银行-天津兰星烁电器维修服务有限公司");
        ACCOUNTS_MAP.put("4000024709200218794", "工商银行-深圳市仨源信息技术服务有限公司");
        ACCOUNTS_MAP.put("4000024709200220163", "工商银行-深圳市快乐鸟电器服务有限公司");
        ACCOUNTS_MAP.put("1001248519300304085", "工商银行-上海汇浦信息技术有限公司");
        ACCOUNTS_MAP.put("1001248519300304112", "工商银行-上海水英电器维修有限公司");
        ACCOUNTS_MAP.put("1302010509200372622", "工商银行-合肥恒修信息服务有限公司");
        ACCOUNTS_MAP.put("1302010509200374674", "工商银行-合肥市无微电器有限公司");
        ACCOUNTS_MAP.put("4301018809100152924", "工商银行-南京苏百信息服务有限公司");
        ACCOUNTS_MAP.put("4301018809100153276", "工商银行-南京海飞电器有限公司");
        ACCOUNTS_MAP.put("1502203009300250147", "工商银行-南昌华阳信息服务有限公司");
        ACCOUNTS_MAP.put("1502203009300250670", "工商银行-南昌修一修电器有限公司");
        ACCOUNTS_MAP.put("3700020709006556878", "工商银行-西安啄木鸟商务信息服务有限公司");
        ACCOUNTS_MAP.put("3700020709006557532", "工商银行-西安合力电器有限公司");
        ACCOUNTS_MAP.put("3202016509200100276", "工商银行-武汉百事兴商务信息咨询服务有限公司");
        ACCOUNTS_MAP.put("3202016509200100702", "工商银行-武汉快云修电器有限公司");
        ACCOUNTS_MAP.put("2402005309200022277", "工商银行-贵阳啄木鸟商务信息咨询有限公司");
        ACCOUNTS_MAP.put("2402018109200203666", "工商银行-贵阳百事发电器有限公司");
        ACCOUNTS_MAP.put("3100024309200330607", "工商银行-重庆修一修商务信息咨询有限公司");
        ACCOUNTS_MAP.put("3100038509000024084", "工商银行-重庆百家家维电器有限公司");
        ACCOUNTS_MAP.put("3602864309100062274", "工商银行-广州善谋信息科技有限公司");
        ACCOUNTS_MAP.put("3602864309100063203", "工商银行-广州电通王电器维修有限公司");

        ACCOUNTS_MAP.put("4100023009200120884","工商银行-厦门迅泉信息技术服务有限公司");
        ACCOUNTS_MAP.put("4100023009200110455","工商银行-厦门家修汇电器维修有限公司");

        ACCOUNTS_MAP.put("3301002309200018350", "工商银行-沈阳信息技术服务有限公司");
        ACCOUNTS_MAP.put("3301002309200019128", "工商银行-沈阳电器有限公司");
        ACCOUNTS_MAP.put("3602864309100148460", "工商银行晓港支行-广州啄木鸟电器维修有限公司");

        ACCOUNTS_MAP.put("2010020309200099408","工商银行-东莞市永邦信息服务有限公司");
        ACCOUNTS_MAP.put("2010020309200101176","工商银行-东莞啄渝电器维修服务有限公司");

        ACCOUNTS_MAP.put("0402302409300207710","工商银行-石家庄创浦商务信息咨询有限公司");
        ACCOUNTS_MAP.put("0402302409300203703","工商银行-石家庄修一修电器维修有限公司");

        ACCOUNTS_MAP.put("3901121209000015496", "工商银行-宁波金伟信息服务有限公司");
        ACCOUNTS_MAP.put("3901121209000016797", "工商银行-宁波励志电器维修服务有限公司");

        ACCOUNTS_MAP.put("0502203409200014961", "工商银行-山西乐邦信息服务有限公司");

        ACCOUNTS_MAP.put("2703100209200053186", "工商银行-兰州然尤信息服务有限公司");
        ACCOUNTS_MAP.put("2703100209200051657", "工商银行-兰州修一修电器维修服务有限公司");

        ACCOUNTS_MAP.put("3100038509100022756","工行重庆较场口时代天街支行-重庆川南环保科技有限公司");    //川南环保主账户
        ACCOUNTS_MAP.put("3100038509100031086","工商银行较场口时代天街支行-重庆言而有信网络科技有限公司");    //言而有信主账户
    }

    private static Map<String, String> ACCOUNTS_NATURE_MAP = Maps.newHashMap();
    static{
        ACCOUNTS_NATURE_MAP.put("2201004019200204967", "信息公司");
        ACCOUNTS_NATURE_MAP.put("2201004019200205071", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1602005319200073974", "信息公司"); // 济南勇拓信息技术有限公司
        ACCOUNTS_NATURE_MAP.put("1602005319200073850", "电器公司"); // 济南啄木鸟电器有限公司
        ACCOUNTS_NATURE_MAP.put("4402245219100004748", "信息公司");
        ACCOUNTS_NATURE_MAP.put("4402245219100004872", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1702820809200027177", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1702820809200027851", "电器公司");
        ACCOUNTS_NATURE_MAP.put("35001896407052517129", "信息公司");
        ACCOUNTS_NATURE_MAP.put("35001896407052517617", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1402021119600072128", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1402021119600072403", "电器公司");
        ACCOUNTS_NATURE_MAP.put("2502010109201103860", "信息公司");
        ACCOUNTS_NATURE_MAP.put("2502010109201104115", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1102110619006057114", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1102110619006057087", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1202021809000091678", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1202021809000093358", "电器公司");
        ACCOUNTS_NATURE_MAP.put("0200225119006716811", "信息公司");
        ACCOUNTS_NATURE_MAP.put("0200225119006716784", "电器公司");
        ACCOUNTS_NATURE_MAP.put("2102109019300510317", "信息公司");
        ACCOUNTS_NATURE_MAP.put("2102109019300510290", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1901004009022539533", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1901004009022540922", "电器公司");
        ACCOUNTS_NATURE_MAP.put("0302040219300185729", "信息公司");
        ACCOUNTS_NATURE_MAP.put("0302040219300186108", "电器公司");
        ACCOUNTS_NATURE_MAP.put("4000024709200218794", "信息公司");
        ACCOUNTS_NATURE_MAP.put("4000024709200220163", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1001248519300304085", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1001248519300304112", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1302010509200372622", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1302010509200374674", "电器公司");
        ACCOUNTS_NATURE_MAP.put("4301018809100152924", "信息公司");
        ACCOUNTS_NATURE_MAP.put("4301018809100153276", "电器公司");
        ACCOUNTS_NATURE_MAP.put("1502203009300250147", "信息公司");
        ACCOUNTS_NATURE_MAP.put("1502203009300250670", "电器公司");
        ACCOUNTS_NATURE_MAP.put("3700020709006556878", "信息公司");
        ACCOUNTS_NATURE_MAP.put("3700020709006557532", "电器公司");
        ACCOUNTS_NATURE_MAP.put("3202016509200100276", "信息公司");
        ACCOUNTS_NATURE_MAP.put("3202016509200100702", "电器公司");
        ACCOUNTS_NATURE_MAP.put("2402005309200022277", "信息公司");
        ACCOUNTS_NATURE_MAP.put("2402018109200203666", "电器公司");
        ACCOUNTS_NATURE_MAP.put("3100024309200330607", "信息公司");
        ACCOUNTS_NATURE_MAP.put("3100038509000024084", "电器公司");
        ACCOUNTS_NATURE_MAP.put("3602864309100062274", "信息公司");
        ACCOUNTS_NATURE_MAP.put("3602864309100063203", "电器公司");
        ACCOUNTS_NATURE_MAP.put("4100023009200120884","信息公司");
        ACCOUNTS_NATURE_MAP.put("4100023009200110455","电器公司");
        ACCOUNTS_NATURE_MAP.put("3301002309200018350","信息公司");
        ACCOUNTS_NATURE_MAP.put("3301002309200019128","电器公司");
        ACCOUNTS_NATURE_MAP.put("3602864309100148460","电器公司");

        // 工商银行-东莞市永邦信息服务有限公司
        ACCOUNTS_NATURE_MAP.put("2010020309200099408","信息公司");
        // 东莞啄渝电器维修服务有限公司
        ACCOUNTS_NATURE_MAP.put("2010020309200101176","电器公司");

        // 工商银行-石家庄创浦商务信息咨询有限公司
        ACCOUNTS_NATURE_MAP.put("0402302409300207710","信息公司");
        // 石家庄修一修电器维修有限公司
        ACCOUNTS_NATURE_MAP.put("0402302409300203703","电器公司");

        // 工商银行-宁波金伟信息服务有限公司
        ACCOUNTS_NATURE_MAP.put("3901121209000015496", "信息公司");
        // 工商银行-宁波励志电器维修服务有限公司
        ACCOUNTS_NATURE_MAP.put("3901121209000016797","电器公司");

        // 工商银行-山西乐邦信息服务有限公司
        ACCOUNTS_NATURE_MAP.put("0502203409200014961", "信息公司");

        // 工商银行-兰州然尤信息服务有限公司
        ACCOUNTS_NATURE_MAP.put("2703100209200053186", "信息公司");
        // 工商银行-兰州修一修电器维修服务有限公司
        ACCOUNTS_NATURE_MAP.put("2703100209200051657","电器公司");

        ACCOUNTS_NATURE_MAP.put("500112036018010047344","总司");     //啄木鸟主账户
        ACCOUNTS_NATURE_MAP.put("3100038509100022756","总司");    //川南环保主账户
        ACCOUNTS_NATURE_MAP.put("3100038509100031086","总司");    //言而有信主账户
    }

    public static Map<String, String> findAccountName(String accounts) {
        Map<String, String> result = Maps.newHashMap();
        String bankName = ACCOUNTS_MAP.get(accounts);
        if (StringUtils.isBlank(bankName)) {
            result.put("companyName", "");
            result.put("bankName", "");
        } else {
            String accountNature = ACCOUNTS_NATURE_MAP.get(accounts);
            String[] bank =  bankName.split("-");
            result.put("companyName", bank[1] + "-" + accountNature);
            result.put("bankName", bank[0]);
        }

        return result;
    }

    /**
     * 发票所属公司账户
     *
     * @param plat
     * @param companyId
     * @param invoiceNature 1、纸质发票 ；2电子发票
     * @return
     */
    public static List<BankAccountDTO> getInvoiceAccountList(int plat, Integer companyId, Integer invoiceNature) {
        if (Objects.equals(invoiceNature, ErpConsts.ORDER_INVOICE_TYPE_PAP)) {
            // 1纸质发票
            BankAccountDTO bankAccountDTO = ACCOUNT_LIST.stream().filter(item -> Objects.equals(companyId, item.getCompanyId())).findAny().orElse(null);
            if (Objects.nonNull(bankAccountDTO)) {
                return Lists.newArrayList(bankAccountDTO);
            }
        } else if (Objects.equals(invoiceNature, ErpConsts.ORDER_INVOICE_TYPE_ELE)) {
            // 2电子发票
            Integer platCompanyId = getCompanyIdByPlat(plat);
            BankAccountDTO bankAccountDTO = ACCOUNT_LIST.stream().filter(item -> Objects.equals(platCompanyId, item.getCompanyId())).findAny().orElse(null);
            if (Objects.nonNull(bankAccountDTO)) {
                return Lists.newArrayList(bankAccountDTO);
            }
        }

        return Lists.newArrayList();
    }

    /**
     * 公司账户
     *
     * @param companyList
     * @return
     */
    public static List<BankAccountDTO> getBankAccountList(int plat, Integer bizLine, List<Integer> companyList) {

        // 追加总公司信息
        Integer platCompanyId = getCompanyIdByPlat(plat);
        companyList.add(platCompanyId);

        // 针对防水补漏、房屋翻新两条业务线的工单，在进行操作完成时，银行账户信息新增川南的银行账户选择
        if (Objects.equals(bizLine, 1003) || Objects.equals(bizLine, 1011)) {
            companyList.add(CNHB_COMPANY_ID);
        }

        List<BankAccountDTO> bankAccountDTOList = ACCOUNT_LIST.stream().filter(item -> companyList.contains(item.getCompanyId())).collect(Collectors.toList());

        if (bankAccountDTOList.size() <= 0 || Objects.equals(plat, GlobalConsts.PLAT_MARK_YEYX)
                || Objects.equals(plat , GlobalConsts.PLAT_MARK_SAAS)) {
            return Lists.newArrayList(BankAccountDTO.builder().build());
        }

        return bankAccountDTOList;
    }
}
